package com.zn.entity;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class FutureReportOrder implements Serializable {
    private String reportId;

    private String customerId;

    private String investorId;

    private String productCode;

    private String productName;

    private String instrumentCode;

    private String instrumentName;

    private String orderRef;

    private BigDecimal limitPrice;

    private String direction;

    private String offsetFlag;

    private String tradingDay;

    private String submitStatus;

    private String orderStatus;

    private String orderSysId;

    private String orderSource;

    private String orderType;

    private Integer orderPriceType;

    private Integer documentaryFlag;

    private Integer hedgingFlag;

    private Integer volume;

    private Integer minVolume;

    private Integer tradeVolume;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
    private Date reportTime;

    private Date createTime;

    private Date updateTime;

    private String statusMsg;

    private BigDecimal frozenDeposit;

    private BigDecimal stopLossAmount;

    private BigDecimal totalFee;

    private BigDecimal stopLossPoint;

    private Integer respCStatus;

    private BigDecimal univalentOpenFee;

    private BigDecimal univalentCloseFee;

    private BigDecimal costTotalFee;

    private BigDecimal univalentCostOpenFee;

    private BigDecimal univalentCostCloseFee;
    /**委托列表需要**/
    private String instrumentMonth;

    private String tradeServerCode;

    private static final long serialVersionUID = 1L;

    public String getReportId() {
        return reportId;
    }

    public void setReportId(String reportId) {
        this.reportId = reportId;
    }

    public String getCustomerId() {
        return customerId;
    }

    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    public String getInvestorId() {
        return investorId;
    }

    public void setInvestorId(String investorId) {
        this.investorId = investorId;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getInstrumentCode() {
        return instrumentCode;
    }

    public void setInstrumentCode(String instrumentCode) {
        this.instrumentCode = instrumentCode;
    }

    public String getInstrumentName() {
        return instrumentName;
    }

    public void setInstrumentName(String instrumentName) {
        this.instrumentName = instrumentName;
    }

    public String getOrderRef() {
        return orderRef;
    }

    public void setOrderRef(String orderRef) {
        this.orderRef = orderRef;
    }

    public BigDecimal getLimitPrice() {
        return limitPrice;
    }

    public void setLimitPrice(BigDecimal limitPrice) {
        this.limitPrice = limitPrice;
    }

    public String getDirection() {
        return direction;
    }

    public void setDirection(String direction) {
        this.direction = direction;
    }

    public String getOffsetFlag() {
        return offsetFlag;
    }

    public void setOffsetFlag(String offsetFlag) {
        this.offsetFlag = offsetFlag;
    }

    public String getTradingDay() {
        return tradingDay;
    }

    public void setTradingDay(String tradingDay) {
        this.tradingDay = tradingDay;
    }

    public String getSubmitStatus() {
        return submitStatus;
    }

    public void setSubmitStatus(String submitStatus) {
        this.submitStatus = submitStatus;
    }

    public String getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(String orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getOrderSysId() {
        return orderSysId;
    }

    public void setOrderSysId(String orderSysId) {
        this.orderSysId = orderSysId;
    }

    public String getOrderSource() {
        return orderSource;
    }

    public void setOrderSource(String orderSource) {
        this.orderSource = orderSource;
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }

    public Integer getVolume() {
        return volume;
    }

    public void setVolume(Integer volume) {
        this.volume = volume;
    }

    public Integer getMinVolume() {
        return minVolume;
    }

    public void setMinVolume(Integer minVolume) {
        this.minVolume = minVolume;
    }

    public Integer getTradeVolume() {
        return tradeVolume;
    }

    public void setTradeVolume(Integer tradeVolume) {
        this.tradeVolume = tradeVolume;
    }

    public Date getReportTime() {
        return reportTime;
    }

    public void setReportTime(Date reportTime) {
        this.reportTime = reportTime;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getStatusMsg() {
        return statusMsg;
    }

    public void setStatusMsg(String statusMsg) {
        this.statusMsg = statusMsg;
    }

    public BigDecimal getFrozenDeposit() {
        return frozenDeposit;
    }

    public void setFrozenDeposit(BigDecimal frozenDeposit) {
        this.frozenDeposit = frozenDeposit;
    }

    public BigDecimal getStopLossAmount() {
        return stopLossAmount;
    }

    public void setStopLossAmount(BigDecimal stopLossAmount) {
        this.stopLossAmount = stopLossAmount;
    }

    public BigDecimal getTotalFee() {
        return totalFee;
    }

    public void setTotalFee(BigDecimal totalFee) {
        this.totalFee = totalFee;
    }

    public BigDecimal getStopLossPoint() {
        return stopLossPoint;
    }

    public void setStopLossPoint(BigDecimal stopLossPoint) {
        this.stopLossPoint = stopLossPoint;
    }

    public Integer getRespCStatus() {
        return respCStatus;
    }

    public void setRespCStatus(Integer respCStatus) {
        this.respCStatus = respCStatus;
    }

    public BigDecimal getUnivalentOpenFee() {
        return univalentOpenFee;
    }

    public void setUnivalentOpenFee(BigDecimal univalentOpenFee) {
        this.univalentOpenFee = univalentOpenFee;
    }

    public BigDecimal getUnivalentCloseFee() {
        return univalentCloseFee;
    }

    public void setUnivalentCloseFee(BigDecimal univalentCloseFee) {
        this.univalentCloseFee = univalentCloseFee;
    }

    public BigDecimal getUnivalentCostOpenFee() {
        return univalentCostOpenFee;
    }

    public void setUnivalentCostOpenFee(BigDecimal univalentCostOpenFee) {
        this.univalentCostOpenFee = univalentCostOpenFee;
    }

    public BigDecimal getUnivalentCostCloseFee() {
        return univalentCostCloseFee;
    }

    public void setUnivalentCostCloseFee(BigDecimal univalentCostCloseFee) {
        this.univalentCostCloseFee = univalentCostCloseFee;
    }

    public BigDecimal getCostTotalFee() {
        return costTotalFee;
    }

    public void setCostTotalFee(BigDecimal costTotalFee) {
        this.costTotalFee = costTotalFee;
    }

    public String getInstrumentMonth() {
        return instrumentMonth;
    }

    public void setInstrumentMonth(String instrumentMonth) {
        this.instrumentMonth = instrumentMonth;
    }

    public String getTradeServerCode() {
        return tradeServerCode;
    }

    public void setTradeServerCode(String tradeServerCode) {
        this.tradeServerCode = tradeServerCode;
    }

    public Integer getOrderPriceType() {
        return orderPriceType;
    }

    public void setOrderPriceType(Integer orderPriceType) {
        this.orderPriceType = orderPriceType;
    }

    public Integer getDocumentaryFlag() {
        return documentaryFlag;
    }

    public void setDocumentaryFlag(Integer documentaryFlag) {
        this.documentaryFlag = documentaryFlag;
    }

    public Integer getHedgingFlag() {
        return hedgingFlag;
    }

    public void setHedgingFlag(Integer hedgingFlag) {
        this.hedgingFlag = hedgingFlag;
    }

    @Override
    public String toString() {
        return "FutureReportOrder{" +
                "reportId='" + reportId + '\'' +
                ", customerId='" + customerId + '\'' +
                ", investorId='" + investorId + '\'' +
                ", productCode='" + productCode + '\'' +
                ", productName='" + productName + '\'' +
                ", instrumentCode='" + instrumentCode + '\'' +
                ", instrumentName='" + instrumentName + '\'' +
                ", orderRef='" + orderRef + '\'' +
                ", limitPrice=" + limitPrice +
                ", direction='" + direction + '\'' +
                ", offsetFlag='" + offsetFlag + '\'' +
                ", tradingDay='" + tradingDay + '\'' +
                ", submitStatus='" + submitStatus + '\'' +
                ", orderStatus='" + orderStatus + '\'' +
                ", orderSysId='" + orderSysId + '\'' +
                ", orderSource='" + orderSource + '\'' +
                ", orderType='" + orderType + '\'' +
                ", orderPriceType=" + orderPriceType +
                ", volume=" + volume +
                ", minVolume=" + minVolume +
                ", tradeVolume=" + tradeVolume +
                ", reportTime=" + reportTime +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", statusMsg='" + statusMsg + '\'' +
                ", frozenDeposit=" + frozenDeposit +
                ", stopLossAmount=" + stopLossAmount +
                ", totalFee=" + totalFee +
                ", stopLossPoint=" + stopLossPoint +
                ", respCStatus=" + respCStatus +
                ", univalentOpenFee=" + univalentOpenFee +
                ", univalentCloseFee=" + univalentCloseFee +
                ", costTotalFee=" + costTotalFee +
                ", univalentCostOpenFee=" + univalentCostOpenFee +
                ", univalentCostCloseFee=" + univalentCostCloseFee +
                ", instrumentMonth='" + instrumentMonth + '\'' +
                ", tradeServerCode='" + tradeServerCode + '\'' +
                '}';
    }
}